package com.web.kdl.service.user;

import com.web.kdl.common.result.CommonResult;
import com.web.kdl.entity.user.UserInfo;
import com.web.kdl.pojo.Vo.UserVo;
import com.web.kdl.pojo.form.UserAddForm;
import com.web.kdl.pojo.form.UserForm;
import com.web.kdl.pojo.form.UserUpdateForm;

import java.util.List;

/**
 * @author zq
 * @date 2022/7/2 12:00
 */
public interface UserService {
    Boolean addUser(UserAddForm form);

    UserInfo findByUsername(String username);

    CommonResult login(UserForm form);

    List<UserVo> getAllUser();

    Boolean updateUser(UserUpdateForm form);

    Boolean resetPassword(UserInfo form);

    int deleteByIds(List<String> userIds);

    /**
     * 获取权限列表id
     * @param userId
     * @return
     */
    List<String> listAuthorityById(String userId);
    
    /**
     * 根据用户名更新密码
     * @param username 用户名
     * @param password 新密码
     * @return 更新结果
     */
    Boolean updatePassword(String username, String password);

}
